home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacHack 2000
/
MacHack 2000.toast
/
pc
/
The Hacks
/
Softshoe
/
Lisa's Mac Parts
/
AppleEvents
/
Records
/
AEStruct.h
< prev
next >
Wrap
Text File
|
2000-06-23
|
1KB
|
41 lines
// AEStruct.h
#ifndef AEStruct_h
#define AEStruct_h
#ifndef AEDescriptor_h
#include "AEDescriptor.h"
#endif
#ifndef AEMember_h
#include "AEMember.h"
#endif
#ifndef AEListItem_h
#include "AEListItem.h"
#endif
class AEStruct: public AEDescriptor
{
public:
AEStruct();
explicit AEStruct( const AEStruct& source ) : AEDescriptor( source ) {}
explicit AEStruct( const AEDescriptor& item ) : AEDescriptor( item, StaticType() ) {}
explicit AEStruct( const ConstAEListItem& item ) : AEDescriptor( item, StaticType() ) {}
explicit AEStruct( const ConstAEMember& item ) : AEDescriptor( item, StaticType() ) {}
explicit AEStruct( const ConstAEParameter& item ) : AEDescriptor( item, StaticType() ) {}
explicit AEStruct( const ConstAEAttribute& item ) : AEDescriptor( item, StaticType() ) {}
static AEType StaticType() { return AEType( typeAERecord ); }
bool TypeIsCorrect() const { return Type() == StaticType(); }
uint32 Length() const;
const ConstAEMember operator[]( AEKey i ) const { return ConstAEMember( *this, i ); }
AEMember operator[]( AEKey i ) { return AEMember( *this, i ); }
const ConstAEListItem MemberByNumber( uint32 i ) const { return ConstAEListItem( AsList(), i ); }
AEListItem MemberByNumber( uint32 i ) { return AEListItem( AsList(), i ); }
};
#endif